home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / tex / macros / distribs / nfss / tracefnt.sty < prev   
Text File  |  1992-11-29  |  7KB  |  177 lines

  1. %% 
  2. %% This is file `tracefnt.sty', generated 
  3. %% on <1992/9/24> with the docstrip utility (2.0r).
  4. %% 
  5. %% The original source files were:
  6. %% 
  7. %% tracefnt.doc  (with options: `trace,style')
  8. %% 
  9. %% Copyright (C) 1989-1992 by Frank Mittelbach, Rainer Schoepf. 
  10. %% All rights reserved. 
  11. %% 
  12. %% This file is part of the NFSS (New Font Selection Scheme) package. 
  13. %% 
  14. %% IMPORTANT NOTICE: 
  15. %% 
  16. %% You are not allowed to change this file. You may however copy 
  17. %% this file to a file with a different name and then change the copy 
  18. %% if you obey the restrictions on file changes described in 
  19. %% readme.mz. 
  20. %% 
  21. %% You are allowed to distribute this file under the condition that 
  22. %% it is distributed together with all files mentioned in readme.mz3. 
  23. %% If you receive only some of these files from someone, complain! 
  24. %% 
  25. %% You are NOT ALLOWED to distribute this file alone. You are NOT 
  26. %% ALLOWED to take money for the distribution or use of either this 
  27. %% file or a changed version, except for a nominal charge for copying 
  28. %% etc. 
  29. %% 
  30. %% For error reports in case of UNCHANGED versions see readme files. 
  31. %% 
  32. %% Please do not request updates from us directly. Distribution is 
  33. %% done through Mail-Servers and TeX organizations. 
  34. %% 
  35. \def\fileversion{v1.0s}
  36. \def\filedate{92/09/24}
  37. \def\docdate {90/04/05}
  38.  
  39. %% \CheckSum{336}
  40. %% \CharacterTable
  41. %%  {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
  42. %%   Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
  43. %%   Digits        \0\1\2\3\4\5\6\7\8\9
  44. %%   Exclamation   \!     Double quote  \"     Hash (number) \#
  45. %%   Dollar        \$     Percent       \%     Ampersand     \&
  46. %%   Acute accent  \'     Left paren    \(     Right paren   \)
  47. %%   Asterisk      \*     Plus          \+     Comma         \,
  48. %%   Minus         \-     Point         \.     Solidus       \/
  49. %%   Colon         \:     Semicolon     \;     Less than     \<
  50. %%   Equals        \=     Greater than  \>     Question mark \?
  51. %%   Commercial at \@     Left bracket  \[     Backslash     \\
  52. %%   Right bracket \]     Circumflex    \^     Underscore    \_
  53. %%   Grave accent  \`     Left brace    \{     Vertical bar  \|
  54. %%   Right brace   \}     Tilde         \~}
  55. %%
  56. \@ifundefined{new@fontshape}
  57.  {\errmessage{The style option `tracefnt' does not make sense if you
  58.               do not use a format with the new font selection scheme.}
  59.   \endinput}
  60.   {}
  61.  \immediate\write\sixt@@n{Style Option: `tracefnt'
  62.  \fileversion\space <\filedate>  (FMi and RmS)}
  63. \immediate\write\sixt@@n{English Documentation
  64.  \@spaces\@spaces\space  <\docdate>  (FMi and RmS)}
  65. \immediate\write\sixt@@n{Includes module(s):
  66.  trace
  67. }
  68. \def\extract@font{%
  69.     \def\@tempa{\def\extract@fontinfo####1}%
  70.     \edef\@tempb{<\expandafter\strip@prefix\meaning\f@size>}%
  71.     \expandafter\@tempa\@tempb##2##3<##4\@nil{%
  72.       \global\expandafter\font \font@name
  73.            \ifcase0##2##3\relax\or
  74.                    ##3
  75.                     \font@warning{Font/shape
  76.                               `\f@family/\f@series/\f@shape'
  77.                               in size \@tempb\space  not available}%
  78.                     \font@warning{Using external font `##3'
  79.                                     instead}\else
  80.                   \default@errfont \errhelp\nofont@help
  81.                          \errmessage{Font \expandafter
  82.                                     \string\font@name\space
  83.                                     not found}%
  84.                \fi
  85.    \ifnum \tracingfonts >\@ne
  86.    \typeout{Loading external  ##2##3 as \font@name
  87.             \on@line}\fi
  88.               }%
  89.     \edef\font@info{\expandafter\expandafter\expandafter\string
  90.         \csname \f@family/\f@series/\f@shape \endcsname\@tempb}%
  91.     \expandafter\extract@fontinfo\font@info 3<\@nil
  92.     \csname +\f@family \expandafter
  93.        \endcsname \font@name \relax}
  94.  
  95. \def\p@selectfont{%
  96.     \xdef\font@name{%
  97.       \csname\f@family/\f@series/\f@shape/\f@size\endcsname}%
  98.     \pickup@font
  99.     \font@name
  100.  \ifnum \tracingfonts>\tw@
  101.    \typeout{Switching to \font@name \on@line}\fi
  102.     \setnew@baselineskip
  103.     \setbox\strutbox\hbox{\vrule\@height.7\baselineskip
  104.         \@depth.3\baselineskip \@width\z@}%
  105.     \normalbaselineskip\baselineskip
  106.     \ifx \glb@currsize \f@size
  107.      \else
  108.  \ifnum \tracingfonts>\tw@
  109.    \typeout{Changing size or baselineskip ...}\fi
  110.      \glb@settings \the\every@size
  111.  \ifnum \tracingfonts>\tw@
  112.    \aftergroup\type@restoreinfo \fi
  113.        \aftergroup\glb@settings \fi
  114.  \ifnum \tracingfonts>\tw@
  115.   \gdef\font@restore{\xdef\font@name{%
  116.     \csname\f@family/\f@series/\f@shape/\f@size\endcsname}%
  117.     \typeout{Restoring \space\space\space\font@name \on@line}%
  118.     \global\let\font@restore\@empty}%
  119.    \aftergroup\font@restore
  120.  \fi
  121.     }
  122.  \def\type@restoreinfo{\typeout{Restoring size
  123.                        or baselineskip ...}}
  124. \def\baselinestretch{1}
  125. \newtoks\every@size
  126. \every@size={}
  127. \def\use@mathgroup#1#2{\relax\ifmmode
  128.  \ifnum \tracingfonts>\tw@
  129.    \count@#2\relax
  130.    \typeout{Switching to \string\mathgroup\space #2
  131.             (\the\count@)\on@line}\fi
  132.      \math@bgroup
  133.          #1\mathgroup#2\relax
  134.      \expandafter\math@egroup\fi}%
  135.  \ifx\math@bgroup\begingroup
  136.    \def\math@egroup#1{#1\endgroup
  137.      \ifnum \tracingfonts>\tw@
  138.     \typeout{Restoring \space\space\space\string\mathgroup\space
  139.        (\ifnum\mathgroup=\m@ne default\else \the\mathgroup \fi)%
  140.              \on@line}\fi}
  141.  \fi
  142. \def\getanddefine@fonts#1#2{%
  143.  \ifnum \tracingfonts>\tw@
  144.  \count@#1\relax
  145.    \typeout{Setting up \string\mathgroup\space #1 (\the\count@)
  146.             as \string#2 \f@size/\sf@size/\ssf@size\on@line}\fi
  147.   \xdef\font@name{\csname \string#2/\f@size\endcsname}%
  148.   \pickup@font \let\textfont@name\font@name
  149.   \xdef\font@name{\csname \string#2/\sf@size\endcsname}%
  150.   \pickup@font \let\scriptfont@name\font@name
  151.   \xdef\font@name{\csname \string#2/\ssf@size\endcsname}%
  152.   \pickup@font
  153.   \edef\math@fonts{\math@fonts
  154.                \textfont#1\textfont@name
  155.                \scriptfont#1\scriptfont@name
  156.                \scriptscriptfont#1\font@name}%
  157.     }
  158. \def\tracingfonts{\font@warning{\string\tracingfonts\space
  159.                   command not provided.^^J
  160.                   Use `tracefnt' option in \string\documentstyle\space
  161.                   command.^^J Command found:}%
  162.                   \count@}
  163.    \newcount\tracingfonts
  164.  \tracingfonts=1
  165. \def\font@warning#1{%
  166.  \ifnum\tracingfonts>\z@
  167.  \errhelp{This is only a warning message but it gives you^^J%
  168.           time to think about the font substitution above.}%
  169.  \errmessage{Warning: #1}\else
  170.           \immediate\write\sixt@@n{Warning: #1\on@line.}%
  171.  \fi
  172.           }
  173.  
  174. \endinput
  175. %% 
  176. %% End of file `tracefnt.sty'.
  177.